package com.esender.common.enums;

import lombok.Getter;

@Getter
public enum CMPP2ResultEnums {
    OK(0, "成功"),
    // 消息结构错误
    MESSAGE_BUILD_ERROR(1, "消息结构错误"),
    // 命令字错
    COMMAND_WORD_ERROR(2, "命令字错"),
    // 消息序号重复
    MSG_SEQUENCE_ERROR(3, "消息序号重复"),
    // 消息长度错
    MSG_LENGTH_ERROR(4, "消息长度错"),
    // 资费代码错误
    INCORRECT_TARIFF_ERROR(5, "资费代码错误"),
    // 超过最大信息长
    MSG_LENGTH_OVER_MAX_ERROR(6, "超过最大信息长"),
    // 业务代码错误
    BUSINESS_CODE_ERROR(7, "业务代码错误"),
    // 流量控制错误
    FLOW_CONTROL_ERROR(8, "流量控制错误"),
    // 其他错误
    UNKNOWN(9, "其他错误"),
    ;
    private Integer result;
    private String msg;

    CMPP2ResultEnums(Integer result, String msg) {
        this.result = result;
        this.msg = msg;
    }

    public static CMPP2ResultEnums getResultMsg(Integer result) {
        for (CMPP2ResultEnums resultEnum : CMPP2ResultEnums.values()) {
            if (resultEnum.getResult().equals(result)) {
                return resultEnum;
            }
        }
        return UNKNOWN;
    }
}
